XEQLBL FF RANDOM      //FF REFERS TO THE XEQMINDEX.TXT INDEX FILE

                      //PROGRAM TO PLOT 100 RANDOM NUMBERS ON A LINEAR GRAPH, REV3
                      //BRIEF: PLOT Y = 0.1 X + 3 + RAN#, for X starting at -10 to 20
ERPN                  //ENSURE IN ERPN. MAY NOT BE NEEDED.
DOTD                  //ENSURE IN REAL MODE
CLSUM                 //CLEAR STATS DATA. USE CLSUM AS THE INTERPRETER CANNOT HANDLE NON ASCII LIKE CLΣ
TICKS STO 01          //GET CURRENT TIME IN 0.1 SECOND UNITS

20 STO 00             //CHOOSE LOOP COUNTER STARTING AT 20 AND DECREMENTS TO 0
STO 02                //LOOP COUNTER START VALUE

LBL M1                //CREATE LOOPING LABEL. FOUR LABELS AVAILABLE M1, M2, M3, M4
  RCL 02              //GET THE START VALUE OF THE LOOP COUNTER 20
  RCL 00 -            //REVERSE THE X RANGE TO 0 TO 19
  GSB M4              //CALL SUBROUTINE TO PRODUCE Y AND X. NO NESTING POSSIBLE.
  SUM+                //USE SUM+ TO SEND X&Y TO STATS BUFFER.
  DSZ 00              //DSZ, DECREMENT AND SKIP NEXT COMMAND IF RESULT WAS ZERO
GTO M1                //THE GTO IS SKIPPED IF THE DSZ RESULT WAS 0

TICKS                 //GET CLOCK STATUS
RCL 01 -              //GET STORED CLOCK STATUS. SUBTRACT TO GET EXPIRED TIME
10 /                  //DIVIDE BY 10 TO GET SECONDS

PLTRST
PLSTAT                //PLOTS THE STATS DATA

RETURN                //STOPS PROCESSING

//-------------------------------------------------------------------------------------
LBL M4                //CREATE X FROM THE 0:19 COUNTER
  19 / 30 *           //SCALE THE RANGE TO 0:30
  10 -                //SHIFT THE X RANGE TO -10:20
  ENTER               //DUPLICATE X TO Y
  ENTER               //EXTRA ENTER IN CASE IN eRPN MODE. DUPLICATE X TO Y
  40 / 0.5 - RAN# +   //CALCULATE Y=X/40-0.5+RAN#, WHICH NOW IS IN X REG
  X<>Y                //SWAP TO GET Y AND X IN THE CORRECT STACK REGISTERS FOR STATS
RTN                   //RETURN TO MAIN PROGRAM

END                   //OPTIONAL END OF PROCESSING MARKER. NOTHING AFTER THIS GETS PARSED.


